﻿using Domain.Entity;
using Domain.Entity.bs;
using Domain.Entity.search;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Application.StockService
{
    public interface IStockService
    {
        //添加库存
        Task<int> AddStock(AddStockDto addStockDto);

        //查询是否已存在相同商品、仓库、库位的记录
        Task<Stock> GetStockByCriteria(int procid, int whid, int slotid);

        //修改库存
        Task<int> UpdateStock(AddStockDto addStockDto);

        //修改库存(出库)
        Task<int> UpdateStockJian(AddStockDto addStockDto);


        //库存查询
        Task<FenYe<StockInventoryViewDto>> GetStockAsync(FenYe<StockInventoryViewDto> fenYe, string? name, string? unit, int? whid, string? type, bool showStopped, bool filterZeroStock);



        //库存分布
        Task<StockTJResult> StockDto_hTJ(string? timeType, int? page, int? pagesize);

        //通过仓库ID查
        Task<List<Stock>> GetStockwhid(int whid);

        //查出入库汇总信息
        Task<StockTotals> Gettotal();

         //货品库存查询
        Task<List<StockSearch>> GetByPid(int procid);
    }
}
